EMP 迁移命令行实用程序
在此部分:
关于 EMP 迁移命令行实用程序
Environment Manager 个性化迁移命令行实用程序(EMP 迁移命令行实用程序)是一个命令行驱动的工具,可将用户数据从源数据库复制到目标数据库,将用户名映射到目标域并相应地调整已保存的注册表设置。该实用程序可直接联系相应的数据库,而无需使用现有的个性化服务器。EMP 迁移命令行实用程序提供与 EMP 迁移实用程序相同的功能。
EMP 迁移命令行实用程序位于“工具安装”文件夹中,通过命令提示符运行。
运行 EMP 迁移命令行实用程序
- 打开“运行”对话框,然后输入 cmd.exe。
- 使用命令提示符,导航到“工具安装”文件夹:%ProgramFiles%\AppSense\Environment Manager\Tools\
- 运行 EMPMigrateCmd.exe 以及下表中详细说明的相应参数。
EMP 迁移命令行实用程序参数
参数 | 输入参数 | 参数详细信息 |
/?
/ |
不适用 | 将帮助文本输出到控制台。 |
/sourcedb
|
dbname | 源数据库的名称。 这是一个必需的参数 |
/sourceinstance
|
server[\\instance] | 源数据库的服务器或实例名称。实例名称为可选项。 这是一个必需的参数。 |
/targetdb
|
dbname | 目标数据库的名称。 |
/targetinstance
|
server[\\instance] | 目标数据库的服务器或实例。实例名称为可选项。 这是一个必需的参数。 |
/sourcewindowsauth
|
true 或 false | 用于连接源数据库的身份验证类型:
若未指定参数,则将自动使用 Windows 身份验证。 |
/sourcesqlusername
|
username |
源数据库上用于 SQL 身份验证的用户名。如果需要 SQL 身份验证,请将 sourcewindowsauth 参数设置为 false。 |
/sourcesqlpassword
|
password |
源数据库上用于 SQL 身份验证的密码。如果需要 SQL 身份验证,请将 sourcewindowsauth 参数设置为 false。 |
|
true 或 false | 用于连接目标数据库的身份验证类型:
若未指定参数,则将自动使用 Windows 身份验证 |
/targetsqlusername
|
username |
目标数据库上用于 SQL 身份验证的用户名。如果需要 SQL 身份验证,请将 sourcewindowsauth 参数设置为 false。 |
/targetsqlpassword
|
password |
目标数据库上用于 SQL 身份验证的密码。如果需要 SQL 身份验证,请将 sourcewindowsauth 参数设置为 false。 |
/domainmapping
|
[current]|[map]|[nomap] |
要将用户应用于新域的映射类型。如果未指定,则此参数默认为当前设置。 |
/mapto
|
domainname |
在 mapto 参数设置为 map 时的目标域名。 |
/users
|
[all]|[group]|[list] | 指定要迁移的用户:
如果在源数据库中找到重复的用户,则只迁移最新的用户。 |
/usersgroup
|
groupname |
要迁移的个性化组的名称。在用户设置为 group 时使用。 |
/userlist
|
listfile | 包含迁移用户列表的文件的完整路径。在用户设置为 list 时使用。 文件路径必须用引号括起来。文件中列出的每个用户必须单独成行或采用 CSV 格式。 如果指定的文件名没有路径,则假定为 EMPMigrateCmd.exe 工作目录。 |
/options
|
[replace],[ignoreglobal],[copyarchives],[copydiscovered] | 可以通过逗号分隔参数来指定其中一个或多个选项:
|
/output
|
outputfile | 报告文件的输出位置。指定输出路径时,路径名必须用引号括起来。如果未指定路径,则将使用默认路径 %USERPROFILE%\\Documents\\EMPMigrate.log。 |
/threads
|
number |
迁移数据时所用的线程数。数值 0 是默认值,会强制所用线程数等于处理器计数。 |
用户名必需格式
用户名必须与源数据库中的 dbo.User.Name 字段相匹配。这些名称采用 Microsoft 定义的低级登录名格式。例如,本地域 Ivanti.local 中的用户 (ExampleUser) 的格式是 Ivanti\ExampleUser。使用完全限定的 Ivanti.local 域名会导致用户遭到忽略而无法迁移。虽然技术上是正确的,但其与数据库中指定的“名称”字段并不对应。
不支持用户主体名称 (UPN) 格式。
使用场景和解决方案
以下场景演示如何使用 EMPMigrate 命令行实用程序。为了实现这些场景,SrcSql 表示源位置,TgtSQL 表示目标位置。每个场景都包含待完成任务的概述,以及相关的命令行解决方案。
场景一
使用 Windows 身份验证时,您需要将名为 "Prod Users" 的个性化组迁移到新的目标位置,然后使用源数据库中的用户数据替换目标数据库中的现有用户数据。为了迁移组,您必须检查目标位置上是否存在个性化组,并检查全局数据设置是否存在差异。
解决方案
EMPMigrateCmd.exe /SourceInstance SrcSQL /SourceDB PSDB /TargetInstance TgtSQL /TargetDB PSDB /Users Group /UserGroup "Prod Users" /Options Replace
场景二
为源位置和目标位置使用显式 SQL 凭据时,您需要将所有用户迁移到目标位置。迁移必须替换现有的个性化组,忽略任何全局数据差异,但不能映射到新域。
解决方案
EMPMigrate.exe /SourceInstance SrcSQL /SourceDB PSDB /SourceSQLusername sa /SourceSQLPassword sourcePass /TargetInstance TgtSQL /TargetDB PSDB /TargetSQLUsername sa TargetSQLPassword targetPass /DomainMapping NoMap /Users All /Options Replace,IgnoreGlobal
场景三
在源位置使用 Windows 身份验证时,您需要将 c:\Temp\UserList.txt 中找到的用户列表迁移到需要显式 SQL 凭据的目标位置。迁移必须替换现有的个性化组,并包括已发现的应用程序的数据。迁移必须忽略全局数据设置中的任何差异,但不能映射到新域。
解决方案
EMPMigrate.exe /SourceInstance SrcSQL /SourceDB PSDB /TargetInstance TgtSQL /TargetDB PSDB /TargetSQLUsername sa /TargetSQLPassword targetPass /Users List /UserList "c:\Temp\UserList.txt" /Options Replace,IgnoreGlobal,CopyDiscovered